package com.h3c.nem.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.h3c.nem.dto.TbPersonnelRegisterMiddleDTO;
import com.h3c.nem.dto.beisen.PtEnumDTO;
import com.h3c.nem.entity.TbPersonnelRegisterMiddle;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.util.List;
import java.util.Map;

/**
 * 接口类
 *
 * @author chenyifan
 * @since 2022-06-16 09:51:30
 */
public interface ITbPersonnelRegisterMiddleService extends IService<TbPersonnelRegisterMiddle> {


    /**
     * 根据人事范围获取注册地
     *
     * @param personnelScope 人事范围编码
     * @return
     */
    String getRegistrationByPersonnelScope(String personnelScope);

    List<TbPersonnelRegisterMiddleDTO> selectFuzzyByDto(TbPersonnelRegisterMiddleDTO paramsDTO);

    Integer insertDto(TbPersonnelRegisterMiddleDTO paramsDTO);

    Integer updateDto(TbPersonnelRegisterMiddleDTO paramsDTO);

    Integer deleteDto(TbPersonnelRegisterMiddleDTO paramsDTO);

    Integer importUserNew(MultipartFile file);

    List<PtEnumDTO> getPersonnelRangeEnum();

    /**
     * 根据人事范围code获取公司名称
     * @param personnelScope
     * @return
     */
    String getCompanyNameByPersonnelCode(String personnelScope);
    Map<String, String> getCompanyNameByPersonnelCodeList(List<String> personnelScope);

    File download(TbPersonnelRegisterMiddleDTO paramsDTO, String templateCode, String fileName);
}

